package com.thinkgem.jeesite.modules.data.ftp.entity;


import com.thinkgem.jeesite.common.persistence.MyBaseEntity;
import com.thinkgem.jeesite.modules.data.rep.entity.TfEcReportConfigIn;
import com.thinkgem.jeesite.modules.data.rep.entity.TfEcReportConfigOut;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * 文件接口信息配置
 * @author Havel 2019/05/14
 * @since 1.0
 */
public class TfFileIoConf extends MyBaseEntity<TfFileIoConf> {

    public static final String IS_YES = "1";
    public static final String IS_NO = "0";

    /**
     * 配置ID 
     */
    private Long confId;

    /**
     * FTP地址 
     */
    private String ftpIp;

    /**
     * 端口 
     */
    private Integer ftpPort;

    /**
     * 用户名 
     */
    private String ftpUsername;

    /**
     * 密码 
     */
    private String ftpPassword;

    /**
     * 连接ControlEncoding 
     */
    private String clientEncode;

    /**
     * 连接ServerLanguageCode 
     */
    private String clientSlc;

    /**
     * 目录 
     */
    private String fileDir;

    /**
     * 类型
     * 1-文件到数据库（基础）
     * 11-默认规则取出数据库数据到文本
     * 12-调用服务取出
     * 13-配置全量sql取出
     */
    private String type;

    /**
     * cron时间表达式 
     */
    private String cron;

    /**
     * 文件编码 
     */
    private String fileEncode;

    /**
     * 字段分隔符 
     */
    private String splitChar;

    /**
     * 文件前缀 
     */
    private String prefix;

    /**
     * 文件规则
     */
    private String fileNameRule;

    /**
     * 文件后缀 
     */
    private String suffix;

    /**
     * 存放数据的表名 
     */
    private String dbTableName;

    /**
     * 批量处理行数
     */
    private int batRowNum;

    /**
     * 是否带序列
     */
    private String isSeq;

    private Date createTime;
    private Date updateTime;
    private String delFlag;
    private String sqlExt;

    //== DO
    private List<Map<String,Object>> insertMaps;//值
    private List<TfEcReportConfigIn> configIns;//入参
    private List<TfEcReportConfigOut> configOuts;//出参

    public Long getConfId() {
        return confId;
    }

    public void setConfId(Long confId) {
        this.confId = confId;
    }

    public String getFtpIp() {
        return ftpIp;
    }

    public void setFtpIp(String ftpIp) {
        this.ftpIp = ftpIp == null ? null : ftpIp.trim();
    }

    public Integer getFtpPort() {
        return ftpPort;
    }

    public void setFtpPort(Integer ftpPort) {
        this.ftpPort = ftpPort;
    }

    public String getFtpUsername() {
        return ftpUsername;
    }

    public void setFtpUsername(String ftpUsername) {
        this.ftpUsername = ftpUsername == null ? null : ftpUsername.trim();
    }

    public String getFtpPassword() {
        return ftpPassword;
    }

    public void setFtpPassword(String ftpPassword) {
        this.ftpPassword = ftpPassword == null ? null : ftpPassword.trim();
    }

    public String getClientEncode() {
        return clientEncode;
    }

    public void setClientEncode(String clientEncode) {
        this.clientEncode = clientEncode == null ? null : clientEncode.trim();
    }

    public String getClientSlc() {
        return clientSlc;
    }

    public void setClientSlc(String clientSlc) {
        this.clientSlc = clientSlc == null ? null : clientSlc.trim();
    }

    public String getFileDir() {
        return fileDir;
    }

    public void setFileDir(String fileDir) {
        this.fileDir = fileDir == null ? null : fileDir.trim();
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type == null ? null : type.trim();
    }

    public String getCron() {
        return cron;
    }

    public void setCron(String cron) {
        this.cron = cron == null ? null : cron.trim();
    }

    public String getFileEncode() {
        return fileEncode;
    }

    public void setFileEncode(String fileEncode) {
        this.fileEncode = fileEncode == null ? null : fileEncode.trim();
    }

    public String getSplitChar() {
        return splitChar;
    }

    public void setSplitChar(String splitChar) {
        this.splitChar = splitChar == null ? null : splitChar.trim();
    }

    public String getPrefix() {
        return prefix;
    }

    public void setPrefix(String prefix) {
        this.prefix = prefix == null ? null : prefix.trim();
    }

    public String getFileNameRule() {
        return fileNameRule;
    }

    public void setFileNameRule(String fileNameRule) {
        this.fileNameRule = fileNameRule;
    }

    public String getSuffix() {
        return suffix;
    }

    public void setSuffix(String suffix) {
        this.suffix = suffix == null ? null : suffix.trim();
    }

    public String getDbTableName() {
        return dbTableName;
    }

    public void setDbTableName(String dbTableName) {
        this.dbTableName = dbTableName == null ? null : dbTableName.trim();
    }

    public int getBatRowNum() {
        return batRowNum;
    }

    public void setBatRowNum(int batRowNum) {
        this.batRowNum = batRowNum;
    }

    public String getIsSeq() {
        return isSeq;
    }

    public void setIsSeq(String isSeq) {
        this.isSeq = isSeq;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }


    public List<Map<String, Object>> getInsertMaps() {
        return insertMaps;
    }

    public void setInsertMaps(List<Map<String, Object>> insertMaps) {
        this.insertMaps = insertMaps;
    }

    public List<TfEcReportConfigIn> getConfigIns() {
        return configIns;
    }

    public void setConfigIns(List<TfEcReportConfigIn> configIns) {
        this.configIns = configIns;
    }

    public List<TfEcReportConfigOut> getConfigOuts() {
        return configOuts;
    }

    public void setConfigOuts(List<TfEcReportConfigOut> configOuts) {
        this.configOuts = configOuts;
    }

    public String getSqlExt() {
        return sqlExt;
    }

    public void setSqlExt(String sqlExt) {
        this.sqlExt = sqlExt;
    }
}